$(function() {
    if(typeof(layer) === "undefined"){
        return false
    } else {
        layer.config({
            skin: 'layer-ext-htta'
        });
    }
})

window.onload=function(){
    //禁止后退键 作用于Firefox、Opera
    document.onkeypress=banBackSpace;
    //禁止后退键  作用于IE、Chrome
    document.onkeydown=banBackSpace;
}

if (typeof($.fn.combobox.defaults) != "undefined") {
    $.extend($.fn.combobox.defaults,{
        filter:function(q, row){
            q = q.toUpperCase();
            var opts = $(this).combobox('options');
            var textField = row[opts.textField].toUpperCase();
            return textField.indexOf(q) >= 0;
        }
    });
}

//处理键盘事件 禁止后退键（Backspace）密码或单行、多行文本框除外
function banBackSpace(e){   
    var ev = e || window.event;//获取event对象   
    var obj = ev.target || ev.srcElement;//获取事件源   
    var t = obj.type || obj.getAttribute('type');//获取事件源类型  
    //获取作为判断条件的事件类型
    var vReadOnly = obj.getAttribute('readonly');
    //处理null值情况
    vReadOnly = (vReadOnly == "") ? false : vReadOnly;
    //当敲Backspace键时，事件源类型为密码或单行、多行文本的，
    //并且readonly属性为true或enabled属性为false的，则退格键失效
    var flag1=(ev.keyCode == 8 && (t=="password" || t=="text" || t=="textarea") 
                 && vReadOnly=="readonly")?true:false;
    //当敲Backspace键时，事件源类型非密码或单行、多行文本的，则退格键失效
    var flag2=(ev.keyCode == 8 && t != "password" && t != "text" && t != "textarea")
                 ?true:false;
    //判断
    if(flag2) {
        return false;
    }
    if(flag1) {
        return false;
    }
}

function setAjaxLoading(){

    $(document).ajaxStart(function () {
        $("#loading").show();
    }).ajaxStop(function () {
        $("#loading").hide();
    });
    $(document).ajaxError(function(event,request,settings){
        $("#loading").hide();
    });
}

function moveFocus(evt, objID) {
    var objx = ""
    var strFocus = "";
    objx = objID;
    evt = (evt) ? evt : ((window.event) ? window.event : "");
    key = evt.keyCode ? evt.keyCode : evt.which;
    if (key == 13) {
        strFocus = "document.getElementById(\"" + objx + "\").focus()";
        eval(strFocus);
        return false;
    }
}

//表单校验  createMatter.js
function validform(formId,isNeedReplace){
    //id：表单的id值
    var flag = true;
    if(formId!=null && formId !='' && typeof(formId)!='undefined' ) {
    //对传入的id下的表单进行验证
        $('#'+formId).find('.easyui-validatebox').each(function(){
            //根据类型获取焦点
            var styleClass = $(this).attr('class');
            if(styleClass && styleClass.indexOf("easyui-combobox") != -1){
                if(!$("#"+this.id).combobox('isValid') ){
                   $("#" + this.id).combobox('textbox').focus();
                    flag = false;
                    if($("#"+this.id).attr('readonly')=='readonly' || $("#"+this.id).attr('disabled')=='disabled'){
                        $("#"+this.id).combobox('textbox').trigger('mouseover');
                    }
                    return flag;
                }
            }else{
                if(!$("#"+this.id).validatebox('isValid') ){

                    if(styleClass && styleClass.indexOf("easyui-textbox") != -1){
                        flag = false;
                        $("#" + this.id).textbox('textbox').focus();
                    }else if(styleClass && styleClass.indexOf("easyui-numberbox") != -1){
                        flag = false;
                        $("#" + this.id).numberbox('textbox').focus();
                    }else if(styleClass && styleClass.indexOf("easyui-filebox") != -1){
                        if(!$("#"+this.id).filebox('isValid')){
                            flag = false;
                            $("#" + this.id).filebox('textbox').focus();
                            flag = false;
                            $("#"+this.id).filebox('textbox').trigger('mouseover');
                        }
                    }else if(styleClass && styleClass.indexOf("easyui-combotree") != -1){
                        if(!$("#"+this.id).combotree('isValid')){
                            flag = false;
                            $("#" + this.id).combotree('textbox').focus();
                            flag = false;
                            $("#"+this.id).combotree('textbox').trigger('mouseover');
                        }
                    }else{
                        flag = false;
                        $("#"+this.id).focus();
                        if($("#"+this.id).attr('readonly')=='readonly' || $("#"+this.id).attr('disabled')=='disabled'){
                            $("#"+this.id).trigger('mouseover');
                        }
                    }
                    return flag;
                }
            }

        });
    } else {
        //对所有表单进行验证
        $('.easyui-validatebox').each(function() {
            //根据类型获取焦点
            var styleClass = $(this).attr('class');
            if(styleClass && styleClass.indexOf("easyui-combobox") != -1){
                if(!$("#"+this.id).combobox('isValid') ){
                    $("#" + this.id).combobox('textbox').focus();
                }
                if($("#"+this.id).attr('readonly')=='readonly' || $("#"+this.id).attr('disabled')=='disabled'){
                    $("#"+this.id).combobox('textbox').trigger('mouseover');
                }
                flag = false;
                return flag;
            }else{
                if(!$("#"+this.id).validatebox('isValid') ){
                    if(styleClass && styleClass.indexOf("easyui-textbox") != -1){
                        $("#" + this.id).textbox('textbox').focus();
                    }else if(styleClass && styleClass.indexOf("easyui-numberbox") != -1){
                        $("#" + this.id).numberbox('textbox').focus();
                    }else{
                        $("#"+this.id).focus();
                    }
                    if($("#"+this.id).attr('readonly')=='readonly' || $("#"+this.id).attr('disabled')=='disabled'){
                        $("#"+this.id).trigger('mouseover');
                    }
                    flag = false;
                    return flag;
                }
            }
        });
    }
    return flag;
}

//关闭layer弹窗
function closeLayer(){
    var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
    parent.layer.close(index); //再执行关闭
}

/**
 * 设置系统全局变量
 * @param key
 * @param value
 */
function setGlobalVariable (key, value){
    $(window.top.document.body, window.top.document)
        .prepend('<input type="hidden" id="globalVariable_' + key + '" value=""/>');
    $(window.top.document.body, window.top.document).find("input[id='globalVariable_"+ key +"']").val(value);
}
/**
 * 获取系统全局变量的值
 * @param {Object} key
 */
function getGlobalVariable(key){
    var globalVariableValue = $.trim($(window.top.document.body, window.top.document)
        .find("input[id='globalVariable_"+ key +"']").val());
    $(window.top.document.body, window.top.document).find("input[id='globalVariable_"+ key +"']").remove();
    return globalVariableValue;
}
